/*
  学习目标：
 🗝️ 使用useAppSelector获取state， useSelector就不再使用了
 🗝️ reducer函数一定要有返回值类型
 🗝️ 在TS中，reducer不要解构action
  需求1：✅获取list，渲染任务列表 
  需求2：✅根据id更新一条任务列表
  需求3：✅根据id删除一条任务
  需求4：✅清除已完成的任务
  需求5：✅新增-收集用户输入的内容，监听回车事件
  需求6：✅新增一条todo任务
  需求7：✅排它控制高亮
  需求8：✅点谁谁高亮
  需求9：✅实现数据切换
  需求10：✅小选影响全选
  需求11：✅全选影响小选
  需求12：数据缓存

*/

import React from 'react';
import Footer from './components/Footer';
import Header from './components/Header';
import Main from './components/Main';
import './styles/base.css';
import './styles/index.css';

export default function App() {
  return (
    <section className="todoapp">
      <Header />
      <Main />
      <Footer />
    </section>
  );
}
